home *** CD-ROM | disk | FTP | other *** search
/ 3D Images / 3D Images.iso / programs / amiga / batchfactory / scripts / opalpaint / opal_story_board < prev   
Encoding:
Text File  |  1995-01-12  |  5.2 KB  |  254 lines

  1. /* 
  2.                          OPAL 30 FRAME STORY BOARD
  3.                                By J.L. White
  4.                           ©1994 Merlin's Software
  5.  
  6.                    Convert Frames To Story Board Screen
  7.                              Opal Paint Script
  8.                       Requires The Rexxarplib.library
  9.  
  10.  Batch Factory Batch Conversion Scripts are basically Arexx scripts that
  11. allow you to pass certain parameters to the external program you wish
  12. to use to convert the images from one format to another. You can pass
  13. five different strings from Batch Factory to the script by using the
  14. following commands:
  15.  
  16. $N = This will pass the current selected filename.
  17. $P = This will tell Batch Factory to ask for a path to save new frames to.
  18. $# = This will pass the current frame number in the script.
  19. $T = This will pass the total number of frames in the script.
  20. $A = This will pass an offset number to be used to save frames with.
  21.  
  22. NOTE: The following line is required to work as a Batch Factory Script:
  23.  
  24. PARSE=$N $# $T
  25.  
  26. */
  27.  
  28. options results
  29. call Locate_OpalPaint
  30. if ~show('l', "rexxarplib.library") then do
  31.     check = addlib('rexxsupport.library',0,-30,0) 
  32.     check = addlib('rexxarplib.library',0,-30,0)   
  33.     end
  34. address "OpalPaint_Rexx"
  35. arg InPic FrameNum TotalFiles
  36. if TotalFiles > 30 then do
  37.         Okay "You Can Only Select 30 Frames Max!\nPlease Abort & Try Again!"
  38.     Key "AMIGA w"
  39.     address command "wait 1"
  40.     call ScreenToFront("Batch")
  41.     address command "wait 3"
  42.     exit
  43.     end
  44. if FrameNum = 1 then do
  45.         SaveSetUp
  46.                 SetPrefs 1024
  47.           AskBool "Select Save Format You Wish To Use?\n\n        Select [OK] For IFF \n\n     Select [CANCEL] For JPEG"
  48.         if Result=0 then do
  49.             AskProp 1 100 84 "Enter JPEG Compression Value (1 - 100)!"
  50.             Format = JPEG Result
  51.             end
  52.         else
  53.             Format = IFF
  54.                Saver Format
  55.         AskFileName 'Enter Name For StoryBoard! RAM: '
  56.         Name = result
  57.         call open OutData,"RAM:OSB.Temp",'W'
  58.         call writeln OutData,Name
  59.         call close OutData
  60.         StoryX = 28
  61.         StoryY = 29
  62.         AddPage 640 400 HIRES INTERLACE
  63.         CurrPage
  64.         PageNum = result
  65.         SecondaryPage PageNum
  66.         Key "j"
  67.         Okay "Select Background Color Then Click Ok!"
  68.         SolidRect 0 0 640 400
  69.         Okay "Select Border & Text Color Then Click Ok!"
  70.         ActivePot
  71.         TextColor = Result
  72.         Text = "Story Board For "OutPic" With Frames #"right(FrameNum,3,'0')" - #"right(TotalFiles,3,'0')
  73.         Len = ((78-(Length(Text)))/2) * 8
  74.         ActiveBrush 2
  75.         MakeText 'topaz 8 2 'Text
  76.         Handle 0 0
  77.         PutBrush Len 10
  78.         Temp = FrameNum
  79.         key "F10"
  80.         do FrameNum = 1 To TotalFiles
  81.             call XYSet
  82.             SolidRect StoryX-2 StoryY-2 StoryX+83 StoryY+52
  83.             ActiveBrush 2
  84.             Handle 0 0
  85.             MakeText 'topaz 8 2 Frame #'right(FrameNum,3,'0')
  86.             PutBrush StoryX+38 StoryY+61
  87.             end
  88.         FrameNum = Temp
  89.         key "F10"
  90.         Key "j"
  91.         end
  92. Load InPic
  93. ActiveBrush 1
  94. PageSize
  95. Parse var Result Width Height
  96. RectCut 0 0 Width Height
  97. RescaleMethod Smooth1
  98. Resize 83 52
  99. Key "j"
  100. Key "F10"
  101. ActiveBrush 1
  102. ColorSource MULTICOLOR
  103. Handle 0 0
  104. call XYSet
  105. PutBrush StoryX StoryY
  106. if FrameNum = TotalFiles then do
  107.     call open InData,"RAM:OSB.Temp",'R'
  108.     Name = readln(InData)
  109.     call close InData
  110.     address command "C:Delete >NIL: RAM:OSB.Temp"
  111.     Save Name
  112.     SecondaryPage
  113.     DeletePage result
  114.     RestoreSetUp
  115.     Key "AMIGA w"
  116.     address command "wait 1"
  117.     end
  118. else do
  119.     Key "F10"
  120.         Key "j"
  121.     end
  122. exit
  123.  
  124. Locate_OpalPaint:
  125.     if (POS('OpalPaint_Rexx',SHOW('Ports')) = 0)
  126.     then do
  127.         address command 'run < nil: > nil: OpalPaint:OpalPaint -q'
  128.         address command 'wait 5'
  129.     end
  130. return
  131.  
  132. XYSet:
  133.     if FrameNum = 1 then do
  134.         StoryX = 28
  135.         StoryY = 29
  136.         end
  137.     if FrameNum = 2 then do
  138.         StoryX = 128
  139.         StoryY = 29
  140.         end
  141.     if FrameNum = 3 then do
  142.         StoryX = 228
  143.         StoryY = 29
  144.         end
  145.     if FrameNum = 4 then do
  146.         StoryX = 328
  147.         StoryY = 29
  148.         end
  149.     if FrameNum = 5 then do
  150.         StoryX = 428
  151.         StoryY = 29
  152.         end
  153.     if FrameNum = 6 then do
  154.         StoryX = 528
  155.         StoryY = 29
  156.         end
  157.     if FrameNum = 7 then do
  158.         StoryX = 28
  159.         StoryY = 103
  160.         end
  161.     if FrameNum = 8 then do
  162.         StoryX = 128
  163.         StoryY = 103
  164.         end
  165.     if FrameNum = 9 then do
  166.         StoryX = 228
  167.         StoryY = 103
  168.         end
  169.     if FrameNum = 10 then do
  170.         StoryX = 328
  171.         StoryY = 103
  172.         end
  173.     if FrameNum = 11 then do
  174.         StoryX = 428
  175.         StoryY = 103
  176.         end
  177.     if FrameNum = 12 then do
  178.         StoryX = 528
  179.         StoryY = 103
  180.         end
  181.     if FrameNum = 13 then do
  182.         StoryX = 28
  183.         StoryY = 177
  184.         end
  185.     if FrameNum = 14 then do
  186.         StoryX = 128
  187.         StoryY = 177
  188.         end
  189.     if FrameNum = 15 then do
  190.         StoryX = 228
  191.         StoryY = 177
  192.         end
  193.     if FrameNum = 16 then do
  194.         StoryX = 328
  195.         StoryY = 177
  196.         end
  197.     if FrameNum = 17 then do
  198.         StoryX = 428
  199.         StoryY = 177
  200.         end
  201.     if FrameNum = 18 then do
  202.         StoryX = 528
  203.         StoryY = 177
  204.         end
  205.     if FrameNum = 19 then do
  206.         StoryX = 28
  207.         StoryY = 251
  208.         end
  209.     if FrameNum = 20 then do
  210.         StoryX = 128
  211.         StoryY = 251
  212.         end
  213.     if FrameNum = 21 then do
  214.         StoryX = 228
  215.         StoryY = 251
  216.         end
  217.     if FrameNum = 22 then do
  218.         StoryX = 328
  219.         StoryY = 251
  220.         end
  221.     if FrameNum = 23 then do
  222.         StoryX = 428
  223.         StoryY = 251
  224.         end
  225.     if FrameNum = 24 then do
  226.         StoryX = 528
  227.         StoryY = 251
  228.         end
  229.     if FrameNum = 25 then do
  230.         StoryX = 28
  231.         StoryY = 325
  232.         end
  233.     if FrameNum = 26 then do
  234.         StoryX = 128
  235.         StoryY = 325
  236.         end
  237.     if FrameNum = 27 then do
  238.         StoryX = 228
  239.         StoryY = 325
  240.         end
  241.     if FrameNum = 28 then do
  242.         StoryX = 328
  243.         StoryY = 325
  244.         end
  245.     if FrameNum = 29 then do
  246.         StoryX = 428
  247.         StoryY = 325
  248.         end
  249.     if FrameNum = 30 then do
  250.         StoryX = 528
  251.         StoryY = 325
  252.         end
  253. return
  254.